home *** CD-ROM | disk | FTP | other *** search
/ MACD 5 / MACD 5.bin / internet / irc_i_dodatki / eggdrop / eggdrop11.lha / lamestbot < prev    next >
Text File  |  1997-01-15  |  15KB  |  432 lines

  1. #!/path/to/eggdrop
  2. #
  3. # This is a sample configuration file for your bot.  You will definitely
  4. # want to edit this, to set up your bot.  Right now it creates a bot called
  5. # "LamestBot" which sits on channel #lamest.
  6. #
  7. # The most vital things are listed at the top of this file, with the more
  8. # complicated or obscure options further down.  So you don't necessarily
  9. # need to edit this whole thing, although it might be a good idea if you
  10. # want your bot to be hard to spot, and to work exactly the way you want
  11. # it to.
  12. #
  13.  
  14.  
  15. #####  GENERAL STUFF  #####
  16.  
  17.  
  18. # the stuff people will see in /whois
  19. set nick "Lamestbot"
  20. set altnick "Llamabot"      ;# if the nick you want is in use
  21. set username "lamest"       ;# does not work if you have ident running!
  22. set realname "/msg LamestBot hello"
  23.  
  24. # who's running this bot?
  25. set admin "Lamer <email: lamer@lame.connected.com>"
  26.  
  27. # response for CTCP VERSION  (change this to make your bot hard to find)
  28. set ctcp-version "ircII 2.6 SunOS 4.1.3 :ircii 2.6: almost there..."
  29.  
  30. # response for CTCP FINGER  (change this to make your bot hard to find)
  31. set ctcp-finger "Lamestbot (root@home), idle 0 seconds"
  32.  
  33. # response for CTCP USERINFO  (change this to make your bot hard to find)
  34. set ctcp-userinfo "<None Supplied>"
  35.  
  36. # [0/1] let users introduce themselves to the bot via 'hello'?
  37. set learn-users 1
  38.  
  39. # many irc ops check for bots that respond to 'hello'.  you can change this
  40. # to another word by uncommenting the following two lines, and changing
  41. # "myword" to the word you want to use instead of 'hello' (it must be a
  42. # single word)
  43. # novice users are not expected to understand what these two lines do; they
  44. # are just here to help you.  for more information on 'bind', check the file
  45. # 'tcl-commands.doc'
  46. #unbind msg - hello *msg:hello
  47. #bind msg - myword *msg:hello
  48.  
  49. # the server list -- the bot will start at the first server listed, and cycle
  50. # through them whenever it's disconnected
  51. # (please note: these examples are not real servers)
  52. set servers {
  53.   newyork.happyirc.net:6667
  54.   sanjose.happyirc.net:6667
  55.   seattle.happyirc.net:6667
  56.   frankfurt-am.happyirc.net:6667
  57.   peking.happyirc.net:6660
  58. }
  59.  
  60. # what IRC network are you on?  this is just info to share with others on
  61. # your botnet, for human curiosity only.
  62. set network "NowhereNet"
  63.  
  64. # [0/1] even if all the servers are down, cycle forever and keep trying to
  65. # connect?
  66. set never-give-up 0
  67.  
  68. # how many seconds to wait for a response when connecting to a server
  69. # before giving up and moving on?
  70. set server-timeout 15
  71.  
  72. # if the number of servers on the net gets below this number, it will
  73. # jump to a new server (ie, it will assume it's on the losing end of a
  74. # netsplit) -- set to 0 to turn off
  75. # [most irc networks use TS now, so it's to your advantage to turn this off]
  76. set servlimit 0
  77.  
  78. # [0/1] if the bot's nickname is changed (for example, if the intended
  79. # nickname is already in use) keep trying to get the nick back?
  80. set keep-nick 1
  81.  
  82.  
  83. #####  CHANNEL PROTECTION  #####
  84.  
  85.  
  86. # do this for each channel you wish to sit on:
  87. # NOTE: for some reason Tcl won't let you put comments inside { } -- so
  88. #   don't try it, cos it'll mess up your channel definition
  89.  
  90. channel add #lamest {
  91.   chanmode "+nt-likm"
  92.   idle-kick 15
  93.   need-op { putserv "PRIVMSG #lamest :op me please!" }
  94.   need-invite { putserv "PRIVMSG #lamest :let me in!" }
  95. }
  96.  
  97. # the things inside the { } are CHANNEL OPTIONS -- they can be set within
  98. # the "channel add" command, or by using a "channel set" command as in the
  99. # examples below.  they list all the options you can set for a channel.
  100.  
  101. # chanmode
  102. #   what modes will be enforced?  '+' modes will always be kept on, '-' modes
  103. #   will always be kept off
  104. # idle-kick
  105. #   kick channel members after how many minutes of being idle?
  106. #   (leave out to disable, or set to 0)
  107. # need-op
  108. #   script to run (if any) when the bot needs to be op'd on this channel
  109. # need-invite
  110. #   script to run (if any) when the bot gets locked out of this channel
  111. #   (like if the channel is +i, or the bot is banned, etc)
  112.  
  113. # note that "need-op" and "need-invite" are limited to 120 characters,
  114. # so if you want to so something more complicated, just write a proc,
  115. # and make "need-op" or "need-invite" call your proc.
  116.  
  117. # there are also a lot of options that can be turned on or off for each
  118. # channel.  to turn an option on, put a + in front of it.  to turn it off,
  119. # put a - in front of it.  ie, to have auto-op, put:
  120. #   +autoop
  121. # to turn it off, put:
  122. #   -autoop
  123.  
  124. #   clear all channel bans when the bot joins?  (ie, force the channel's
  125. #   ban list to match the bot's internal list)
  126. channel set #lamest -clearbans
  127.  
  128. #   when a ban is set, kick people who are on the channel and match the
  129. #   new ban?  (ie, they were on the channel before the ban)
  130. channel set #lamest +enforcebans
  131.  
  132. #   only activate bans on the channel when necessary?  (this keeps the
  133. #   channel's ban list from getting excessively long.  the bot still remem-
  134. #   bers every ban, but it only activates a ban on the channel when it sees
  135. #   someone join who matches that ban.)
  136. channel set #lamest +dynamicbans
  137.  
  138. #   allow bans to be made by users directly?  (if turned off, the bot will
  139. #   require all bans to be made through the bot's console)
  140. channel set #lamest +userbans
  141.  
  142. #   op users with the +o (op) flag as soon as they join the channel?
  143. #   (hint: this is a BAD IDEA)
  144. channel set #lamest +autoop
  145.  
  146. #   only let users with +o (op) flag be channel ops?
  147. channel set #lamest -bitch
  148.  
  149. #   say a user's info line when she joins the channel?
  150. channel set #lamest +greet
  151.  
  152. #   re-op a user with the +o (op) flag if they get deopped?
  153. channel set #lamest +protectops
  154.  
  155. #   log the channel status line every 5 minutes? (some people think
  156. #   it's annoying; i think it's neat)
  157. channel set #lamest +statuslog
  158.  
  159. #   de-op someone that enters the channel with server ops (ie, netsplit
  160. #   ops) when they didn't have them before the split?
  161. channel set #lamest +stopnethack
  162.  
  163. #   remember people who deop/kick/ban the bot or valid ops, and punish them?
  164. #   users with +f (friend) flag are exempt from revenge
  165. channel set #lamest +revenge
  166.  
  167. #   prevent this channel from being listed on the botnet?  (for paranoid
  168. #   people)
  169. channel set #lamest -secret
  170.  
  171.  
  172. # here's a shorter example:
  173. channel add #botcentral {
  174.   chanmode "+mntisl 1"
  175.   idle-kick 1
  176. }
  177. channel set #botcentral +bitch +clearbans +enforcebans -greet +revenge
  178.  
  179.  
  180. # [0/1] allow users to store an info line?
  181. set use-info 1
  182.  
  183. # [0/1] if this is set, a leading '~' on user@hosts WON'T be stripped off
  184. set strict-host 0
  185.  
  186.  
  187. #####  LOG FILES  #####
  188.  
  189.  
  190. # you can have up to 5 log files.  at midnight every day, the old log files
  191. # are renamed and a new log file begins.  by default, the old one is called
  192. # "(logfilename).yesterday", and any logfiles before yesterday are erased.
  193.  
  194. # events are logged by certain categories -- this way you can specify
  195. # exactly what kind of events you want sent to various logfiles.  the
  196. # events are:
  197. #   m  private msgs/ctcps to the bot
  198. #   k  kicks, bans, mode changes on the channel
  199. #   j  joins, parts, netsplits on the channel
  200. #   p  public chatter on the channel
  201. #   s  server connects/disconnects/notices
  202. #   b  information about bot linking and userfile sharing
  203. #   c  commands people use (via msg or dcc)
  204. #   x  file transfers and file-area commands
  205. #   r  (if defined in eggdrop.h) EVERYTHING sent to the bot by the server
  206. #   o  other: misc info, errors -- IMPORTANT STUFF
  207.  
  208. # each logfile also belongs to a certain channel.  events of type 'k', 'j',
  209. # and 'p' are logged to whatever channel they happened on.  most other
  210. # events are currently logged to every channel.  you can make a logfile
  211. # belong to all channels by assigning it to channel "*".  there are also
  212. # five user-defined levels ('1'..'5') which are used by Tcl scripts.
  213.  
  214. # in 'eggdrop.log' put msgs, commands, and errors from any channel:
  215. logfile mkco * "eggdrop.log"
  216. # in 'lame.log' put joins, parts, and mode changes from #lame:
  217. logfile jk #lame "lame.log"
  218.  
  219. # [0/1] timestamp entries in the log file? (generally a good idea)
  220. set log-time 1
  221.  
  222. # [0/1] keep logfiles for more than 48 hours -- instead of being called
  223. # "(logfilename).yesterday", the log files are named by the current date,
  224. # and kept around forever (eventually your directory might get full, so
  225. # be careful with this!)
  226. set keep-all-logs 0
  227.  
  228. # once a day the logfiles are switched out and started fresh --
  229. # this specifies when that should happen (in military time)
  230. # [note that a leading 0 will make Tcl think this is an octal value,
  231. # something you probably don't want.]
  232. set switch-logfiles-at 300
  233.  
  234. # this is the default console mode -- what masters will see automatically
  235. # when they dcc chat with the bot (masters can alter their own console
  236. # flags once they connect, though) -- it uses the same event flags as
  237. # the log files
  238. # (note that the console channel is automatically set to your "primary"
  239. # channel -- the one you defined first in this file.  masters can change
  240. # their console channel with the '.console' command, however.)
  241. set console "mkcobxs"
  242.  
  243.  
  244. #####  FILES AND DIRECTORIES  #####
  245.  
  246.  
  247. # the userfile: where user records are stored
  248. set userfile "LamestBot.user"
  249.  
  250. # the notefile: where private notes between users are stored
  251. set notefile "LamestBot.notes"
  252.  
  253. # where the help files can be found (and there are plenty)
  254. set help-path "help/"
  255.  
  256. # where miscellaneous info files are
  257. set text-path "text/"
  258.  
  259. # a good place to temporarily store files (ie: /tmp)
  260. set temp-path "/tmp"
  261.  
  262. # the MOTD is displayed when people dcc chat to the bot
  263. set motd "motd"
  264.  
  265.  
  266. #####  FILE SYSTEM  #####
  267.  
  268.  
  269. # the file transfer area works via dcc chat.  you can turn the file system
  270. # off by not defining the 'dcc-path' below.
  271.  
  272. # this is the 'root' directory for the file system (set it to "" if you
  273. # don't want a file system)
  274. set files-path "/home/mydir/dcc"
  275.  
  276. # if you want to allow uploads, set this to the directory uploads should be
  277. # put into
  278. set incoming-path "/home/mydir/dcc/incoming"
  279.  
  280. # [0/1] alternately, you can set this, and uploads will go to the current
  281. # directory that a user is in
  282. set upload-to-pwd 0
  283.  
  284. # eggdrop creates a '.filedb' file in each subdirectory of your dcc area,
  285. # to keep track of its own file system info -- if you can't do that (like
  286. # if the dcc path isn't owned by yours) or you just don't want it to do
  287. # that, specify a path here where you'd like all the database files to
  288. # be stored instead (otherwise, just leave it blank)
  289. set filedb-path ""
  290.  
  291. # set maximum number of people that can be in the file area at once
  292. # (0 to make it effectively infinite)
  293. set max-file-users 20
  294.  
  295. # set maximum number of simultaneous downloads to allow for each user
  296. set max-dloads 3
  297.  
  298. # set the block size for dcc transfers (ircII uses 512 bytes, but admits
  299. # that may be too small -- 1024 is standard these days)
  300. # set this to 0 to use turbo-dcc (recommended)
  301. set dcc-block 0
  302.  
  303. # maximum allowable file size that will be received, in K
  304. # (default is 1024K = 1M)
  305. set max-filesize 1024
  306.  
  307. # [0/1] copy files into the /tmp directory before sending them?  this is
  308. # useful on most systems for file stability.  (someone could move a file
  309. # around while it's being downloaded, and mess up the transfer.)  but if
  310. # your directories are NFS mounted, it's a pain, and you'll want to set
  311. # this to 0.
  312. set copy-to-tmp 1
  313.  
  314.  
  315. #####  END OF IMPORTANT STUFF  #####
  316.  
  317.  
  318. # You don't need to change anything below here if you don't want to.  These
  319. # are more exotic or specialized settings that most people may not need to
  320. # change.  To make sure you've at least SKIMMED the config file up to this
  321. # point, the following line was added.  REMOVE THIS LINE:
  322. die "Please edit your config file."
  323.  
  324. # You MUST remove that line for this config file to work.  This has been
  325. # added to prevent you from starting up a bot that is not fully configured.
  326. # Bots that have not been fully configured may join the wrong IRC network,
  327. # the wrong channels, or generally do things that you do not want.  Please
  328. # make sure that you have double-checked the settings you want.
  329.  
  330.  
  331. #####  BOTNET  #####
  332.  
  333.  
  334. # you probably shouldn't deal with this until reading 'botnet.doc' or
  335. # something.  you need to know what you're doing.
  336.  
  337. # if you want to use a different nickname on the botnet than you use on
  338. # IRC, set it here:
  339. #set botnet-nick "prae"
  340.  
  341. # what telnet port should this bot answer?
  342. # NOTE: if you are running more than one bot on the same machine, you will
  343. #   want to space the telnet ports at LEAST 5 apart... 10 is even better
  344. listen 3333 all
  345.  
  346. # if you would rather have one port for the botnet, and one for normal
  347. # users, you will want something like this instead:
  348. #listen 3333 bots
  349. #listen 4444 users
  350.  
  351. # [0/1] share user data with other bots on the channel?
  352. set share-users 0
  353.  
  354. # [0/1] allow other bots userfiles to overwrite yours?
  355. set passive 0
  356.  
  357. # [0/1] users with the +g (global op) flag will still need the +p (party
  358. # line) flag to join the dcc chat party line?
  359. set require-p 0
  360.  
  361. # [0/1] allow people to telnet in, type 'NEW', and become a new user?
  362. set open-telnets 0
  363.  
  364. # how long (in seconds) should i wait for a connect (dcc chat, telnet,
  365. # relay, etc) before it times out?
  366. set connect-timeout 15
  367.  
  368.  
  369. #####  MORE ADVANCED STUFF  #####
  370.  
  371.  
  372. # are you behind a firewall?  uncomment this and specify your socks host
  373. #set firewall "proxy:178"
  374. # or, for a Sun "telnet passthru" firewall, set it this way
  375. # (does anyone besides Sun use this?)
  376. #set firewall "!sun-barr.ebay:3666"
  377.  
  378. # if you're using virtual hosting (your machine has more than 1 IP), you
  379. # may want to specify the particular IP to bind to.  you can specify
  380. # either by hostname or by IP.  you may also want to set the hostname
  381. # here if eggdrop has trouble detecting it when it starts up.  (it will
  382. # let you know if it has trouble -- trust me.)
  383. #set my-hostname "virtual.host.com"
  384. #set my-ip "99.99.0.0"
  385.  
  386. # if you want all dcc file transfers to use 1 particular listening port
  387. # (this pretty much limits you to one concurrent file transfer at a time),
  388. # either because you're behind a firewall, or for other security reasons,
  389. # set it here
  390. #set reserved-port 9076
  391.  
  392. # script to run (if any) when first connecting to a server
  393. set init-server { putserv "MODE $botnick +i-ws" }
  394.  
  395. # NOTE: 'gain-ops' is now outdated and unused!
  396.  
  397. # how many msgs in how many seconds from the same host constitutes a flood?
  398. set flood-msg 5:60
  399. # how many public msgs in how many seconds?
  400. set flood-chan 10:60
  401. # how many joins/nick changes in how many seconds?
  402. set flood-join 5:60
  403. # how many CTCPs in how many seconds?
  404. set flood-ctcp 3:60
  405.  
  406. # temporary bans will last how many minutes?
  407. set ban-time 60
  408. # temporary ignores will last how many minutes?
  409. set ignore-time 10
  410.  
  411. # normally the user file is saved once an hour, on the hour
  412. # you can change that here (for example, "15" means to save every
  413. # hour at 15 minutes past the hour)
  414. set save-users-at 00
  415.  
  416. # send a note to anybody when I learn new users?
  417. set notify-newusers "HQ"
  418.  
  419. # if compiled with owner, the following user(s) will ALWAYS have the
  420. # owner (+n) flag
  421. set owner "MrLame, MrsLame"
  422.  
  423. # what flags should new users get as a default?
  424. set default-flags "px"
  425.  
  426. # what user-defined fields should be displayed in a '.whois'?
  427. set whois-fields "url birthday"
  428.  
  429. # load that toolkit of useful scripts (some script packages may depend
  430. #   on this being loaded)
  431. source scripts/toolkit.tcl
  432.